Inheritance diagram for TBasicModule:

Public Member Functions | |
| virtual MCCOMErr MCCOMAPI | QueryInterface (const MCIID &riid, void **ppvObj) |
| virtual uint32 MCCOMAPI | AddRef () |
| virtual void MCCOMAPI | Clone (IExDataExchanger **clonedObject, IMCUnknown *pUnkOuter) |
| virtual boolean MCCOMAPI | IsEqual (IExDataExchanger *otherDataExchanger) |
| virtual MCCOMErr MCCOMAPI | GetParameter (IDType keyword, void *parameter) |
| virtual MCCOMErr MCCOMAPI | SetParameter (IDType keyword, void *parameter) |
| virtual void *MCCOMAPI | GetExtensionDataBuffer () |
| You MUST implement this method if you have a pmap (the default returns NULL). | |
| virtual MCCOMErr MCCOMAPI | ExtensionDataChanged () |
| virtual MCCOMErr MCCOMAPI | HandleEvent (MessageID message, IMFResponder *source, void *data) |
| virtual int16 MCCOMAPI | GetResID () |
| virtual MCCOMErr MCCOMAPI | Initialize (IMCUnknown *inElement) |
| virtual MCCOMErr MCCOMAPI | Destroy () |
| virtual MCCOMErr MCCOMAPI | Hydrate () |
| virtual MCCOMErr MCCOMAPI | Dehydrate () |
| virtual MCCOMErr MCCOMAPI | Import (IMCUnknown *inElement, void *inImportData) |
| virtual MCCOMErr MCCOMAPI | BuildMenuBar () |
| virtual MCCOMErr MCCOMAPI | GetPreferredRoom (IDType &roomId) |
| virtual boolean MCCOMAPI | WantsToBeInCurrentRoom () |
| Tell if the module can be inserted in the current room. | |
| virtual boolean MCCOMAPI | SubModuleClosedMainWindow (I3DShModule *subModule) |
| virtual MCCOMErr MCCOMAPI | SubModuleAboutToBeDestroyed (I3DShModule *subModule) |
| virtual MCCOMErr MCCOMAPI | SubModuleAboutToBeHydrated (I3DShModule *subModule) |
| virtual boolean MCCOMAPI | HaveSubModuleActive () |
| Returns true if this master module have a sub module active. | |
| virtual MCCOMErr MCCOMAPI | AboutToCloseMainWindow () |
| virtual boolean MCCOMAPI | SavesInNativeFormat () |
| whether the module wants to save data in the nativefile format | |
| virtual void MCCOMAPI | AddTools (IMFToolGroup *inToolGroup) |
| virtual MCCOMErr MCCOMAPI | GetDefaultPropertiesClient (IPropertiesClient **outPropClient) |
| virtual boolean MCCOMAPI | Receive (int32 message, IMFResponder *source, void *data) |
| virtual boolean MCCOMAPI | SelfMenuAction (ActionNumber actionNumber) |
| virtual void MCCOMAPI | SelfPrepareMenus () |
| virtual boolean MCCOMAPI | SelfKeyDown (TMCPlatformEvent *event) |
| virtual void MCCOMAPI | SelfKeyUp (TMCPlatformEvent *event) |
| virtual boolean MCCOMAPI | SelfToolAction (int32 inOldTool, int32 inNewTool) |
| virtual boolean MCCOMAPI | GetToolDropCandidate (IMFDropCandidate **outDropCandidate, int32 inToolID, IMFToolbarPart *inToolbarPart) |
| virtual boolean MCCOMAPI | GetIndirectToolAction (IShMouseAction **outAction, ActionNumber &outActionNumber, IMFResponder **outContext, IMFPart **outPart, const TMCPoint &inWhere, int32 inToolID, IMFToolbarPart *inToolbarPart) |
| virtual void MCCOMAPI | DataChanged (IChangeChannel *channel, IDType changeKind, IMCUnknown *changedData) |
| virtual void MCCOMAPI | BecameFirstResponder (boolean on) |
Protected Attributes | |
| TMCCountedPtr< IChangeChannel > | fPreferencesChangeChannel |
|
|
AboutToCloseMainWindow() is called when your main window is about to be closed by someone else. It is very important to release any references that your module may have on your window. You do not need to close it, since this "someone" is going to do it. Implements I3DExModule. |
|
|
Increments the reference count of the object Reimplemented from TBasicDataExchanger. |
|
|
Implements I3DExModule. |
|
|
Implements IMFExResponder. |
|
|
BuildMenuBar() gives you opportunity to add menus dynamically (instead os using a MBAR resource) Use gShMenuUtilities to add menu items Implements I3DExModule. |
|
||||||||||||
|
Creates a copy of an external component. You only need to implement this method if your object has data that are not stored in its Parameter Map (Pmap).
Reimplemented from TBasicDataExchanger. |
|
||||||||||||||||
|
This function is called when a change has been posted on a channel on which this IChangeListener registered itself.
Implements IChangeListener. |
|
|
Dehydrate() is called when the module is to be dehydrated; that is, the room that it occupies is exited. If this module is a main module (i.e., it defines a room), override this function to hide any main windows and call Dehydrate() on slave modules. If this module is a slave module, override this function to destroy large caches and parts and call Dehydrate() on any subslave modules. NOTE: Deactive() is called before Dehydrate() on an active module. Implements I3DExModule. |
|
|
Destroy() is called once when the module is to be destroyed (e.g., Scene Document Modules are called when the document closes, Global Modules are called when the application is quit). Override this function to destroy UI elements and cleanup any data---you need destroy your slave modules, since you are in charge of them Implements I3DExModule. |
|
|
Called each time a parameter of the parameter map (Pmap) is modified. This should only be used to invalidate caches and should be quick since it can be called many times. Reimplemented from TBasicDataExchanger. |
|
|
Get the default properties client for this module.
Implements I3DExModule. |
|
|
You MUST implement this method if you have a pmap (the default returns NULL).
Reimplemented from TBasicDataExchanger. |
|
||||||||||||||||||||||||||||||||
|
Implements IMFExResponder. |
|
||||||||||||
|
Returns the value of a given parameter of this dataExchanger. This function is called when the shell cannot find the given parameter in the Parameter Map (Pmap) of the component You need to implement this method only if your object has parameters that are not inside the parameter map.
Reimplemented from TBasicDataExchanger. |
|
|
If the module does not define a room (eg the rendering module), this function is called to determine in which room the module wants to be put in. By default the module will be added in the current room. Implements I3DExModule. |
|
|
Returns the resource ID of the NodePart used for the properties of the component. Reimplemented from TBasicDataExchanger. |
|
||||||||||||||||
|
Implements IMFExResponder. |
|
||||||||||||||||
|
Usually called when the user modify something in the component user interface. Allows the component to react to a user action such as pressing a button.
Reimplemented from TBasicDataExchanger. |
|
|
Returns true if this master module have a sub module active.
Implements I3DExModule. |
|
|
Hydrate() is called when the module is to be hydrated; that is, the room that it occupies is entered. If this module is a main module (i.e., it defines a room), override this function to show any main windows and call Hydrate() on slave modules. If this module is a slave module, override this function to prepare to be activated and call Hydrate() on any subslave modules. This may involve showing windows, but should not install parts in shared windows since Hydrate() does not mean the module is active (see Activate() below). Also note that your window may have been closed by someone else (in this case you had been told thru AboutToCloseMainWindow), so you will have to recreate your window. Implements I3DExModule. |
|
||||||||||||
|
Import() is called when the module is asked to import some foreign data. For example, a modeler could be asked to import the facets of another primitive. It is up to the module to do something or not with 'inElement'. The module should rely on inElement->QueryInterface to decide if it can do anything with it of not. In any case, 'inElement' should be left intact. 'inImportData' points to some data block depending on the type import. For example, for modelers, 'inImportData' will be a real32* containing the Fidelity. Implements I3DExModule. |
|
|
Initialize() is called during creation of the module to initialize UI elements, and set the editing element. inElement is the element that the module edits. Override this function to create UI elements such as windows and initialize any data for your module. Use QueryInterface on the inElement object to get the specific interface you need. Scene Document Modules will get an I3DShGroup object. Modelers get two calls to Initialize. First, they get passed the universe group as all Scene Document Modules do. Next, they get passed the master object in the scene selection which they are to edit. In addition, if the user leaves the modeling room and re-enters with a different object selected, Initialize is called again with the new object to edit. Global Modules do not get any object, the have a NULL inElement. Implements I3DExModule. |
|
|
Returns true if the two pointers are referring to the same data exchanger. When IsEqual is called you can assume that otherDataExchanger is of the same type as "this"
Reimplemented from TBasicDataExchanger. |
|
||||||||||||
|
Check if the object supports a given interface and returns a pointer to that interface if it does. Note that QueryInterface will increment the reference count of the object by one if the interface is found.
Reimplemented from TBasicDataExchanger. |
|
||||||||||||||||
|
Implements IMFExResponder. |
|
|
whether the module wants to save data in the nativefile format
Implements I3DExModule. |
|
|
Implements IMFExResponder. |
|
|
Implements IMFExResponder. |
|
|
Implements IMFExResponder. |
|
|
Implements IMFExResponder. |
|
||||||||||||
|
Implements IMFExResponder. |
|
||||||||||||
|
Sets the value of a parameter. You need to implement this method only if your object has parameters that are not inside the parameter map.
Reimplemented from TBasicDataExchanger. |
|
|
SubModuleAboutToBeDestroyed() will be called by any sub module that is about to be destroyed, so you can react. (Note : you tell a sub module that you are its "master" by calling I3DShModule::SetMasterModule()) Implements I3DExModule. |
|
|
SubModuleAboutToBeHydrated() will be called by any sub module that is about to be hydrated, so you can react. (Note : you tell a sub module that you are its "master" by calling I3DShModule::SetMasterModule()) Implements I3DExModule. |
|
|
SubModuleClosedMainWindow() will be called by any sub module that have its Main Window being closed, so you can react and tell it that it is OK to commit suicide (return true). (Note : you tell a sub module that you are its "master" by calling I3DShModule::SetMasterModule()) Implements I3DExModule. |
|
|
Tell if the module can be inserted in the current room.
Implements I3DExModule. |
|
|
|
1.4.5